// next，如果传了参数被当作`上一个`yield表达式的返回值
// 说明next是可以传参数的，如果没传时yield返回值是undefined。
function* myGenerator(x){
	// 第一次执行 
	console.log(x);
	var res1 = yield 1;
	
	console.log('res1',res1);
	var res2 = yield 2;
	
	console.log('res2',res2);
	var res3 = yield 3;
	
	console.log('res3',res3);
	return res1+res2+res3;
}

var generator = myGenerator('开始吧');//得到一个状态机遍历器
var r1 = generator.next(100); // 没有上一个yiled，作废
var r2 = generator.next(200); // `上一个`yield表达式的返回值
var r3 = generator.next(300); // `上一个`yield表达式的返回值
var r4 = generator.next(400); // `上一个`yield表达式的返回值
console.log(r1, r2, r3, r4);
